From 4e673e711ae144bd4d0a4bdc6dc5173543f0553a Mon Sep 17 00:00:00 2001 From: "djm@kirby.fc.hp.com" Date: Thu, 14 Apr 2005 18:57:42 +0000 Subject: [PATCH] bitkeeper revision 1.1277.1.5 (425ebd26PXABcGSvCLobVo7xCbroOg) xenasm.S, process.c: properly pass shared page to domain for paravirtualization Signed-off-by: Dan Magenheimer --- xen/arch/ia64/process.c | 7 ++++--- xen/arch/ia64/xenasm.S | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/xen/arch/ia64/process.c b/xen/arch/ia64/process.c index b88f5ea0c2..3ddbc05192 100644 --- a/xen/arch/ia64/process.c +++ b/xen/arch/ia64/process.c @@ -185,9 +185,10 @@ panic_domain(regs,"psr.ic off, delivering fault=%lx,iip=%p,ifa=%p,isr=%p,PSCB.ii regs->cr_iip = ((unsigned long) PSCB(ed,iva) + vector) & ~0xffUL; regs->cr_ipsr = (regs->cr_ipsr & ~DELIVER_PSR_CLR) | DELIVER_PSR_SET; -// FIXME: NEED TO PASS PSCB, BUT **NOT** IN R31 WHICH IS BEING USED FOR ar.pr -// IN ANY CASE, PASS PINNED ADDRESS, NOT THIS ONE - //regs->r31 = (unsigned long) &PSCB(ed); +#ifdef CONFIG_SMP +#error "sharedinfo doesn't handle smp yet" +#endif + regs->r31 = &((shared_info_t *)SHAREDINFO_ADDR)->vcpu_data[0].arch; PSCB(ed,interrupt_delivery_enabled) = 0; PSCB(ed,interrupt_collection_enabled) = 0; diff --git a/xen/arch/ia64/xenasm.S b/xen/arch/ia64/xenasm.S index 631fa9e61a..8fc2f36817 100644 --- a/xen/arch/ia64/xenasm.S +++ b/xen/arch/ia64/xenasm.S @@ -190,7 +190,7 @@ GLOBAL_ENTRY(ia64_new_rr7) movl r22=SHAREDINFO_ADDR ;; - movl r25=PAGE_KERNEL + movl r25=PAGE_SHARED ;; mov r21=loc5 // saved sharedinfo physical address ;; -- 2.30.2